## Affinity for pod assignment
## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
affinity: {}

annotations: {}

deploymentStrategy: RollingUpdate

image:
  repository: {{registry_prefix}}:{{registry_port}}/{{promtail_image}}
  tag: {{promtail_version}}
  pullPolicy: IfNotPresent

livenessProbe: {}

loki:
  serviceName: ""  # Defaults to "${RELEASE}-loki" if not set
  servicePort: 3100
  serviceScheme: http
  # user: user
  # password: pass

nameOverride: promtail

## Node labels for pod assignment
## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}

pipelineStages:
- docker: {}

## Pod Labels
podLabels: {}

podAnnotations:
  prometheus.io/scrape: "true"
  prometheus.io/port: "http-metrics"

## Assign a PriorityClassName to pods if set
# priorityClassName:

rbac:
  create: true
  pspEnabled: true

readinessProbe:
  failureThreshold: 5
  httpGet:
    path: /ready
    port: http-metrics
  initialDelaySeconds: 10
  periodSeconds: 10
  successThreshold: 1
  timeoutSeconds: 1

resources:
  limits:
    cpu: 50m
    memory: 128Mi
  requests:
    cpu: 50m
    memory: 128Mi

# Custom scrape_configs to override the default ones in the configmap
scrapeConfigs: []

# Custom scrape_configs together with the default ones in the configmap
extraScrapeConfigs: []

securityContext:
  readOnlyRootFilesystem: true
  runAsGroup: 0
  runAsUser: 0

serviceAccount:
  create: true
  name:

## Tolerations for pod assignment
## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations:
- key: node-role.kubernetes.io/master
  operator: Exists
  effect: NoSchedule

# Extra volumes to scrape logs from
volumes:
- name: docker
  hostPath:
    path: {{ STORAGE_DIR }}/containers
- name: pods
  hostPath:
    path: /var/log/pods

volumeMounts:
- name: docker
  mountPath: {{ STORAGE_DIR }}/containers
  readOnly: true
- name: pods
  mountPath: /var/log/pods
  readOnly: true

config:
  client:
    # Maximum wait period before sending batch
    batchwait: 1s
    # Maximum batch size to accrue before sending, unit is byte
    batchsize: 102400

    # Maximum time to wait for server to respond to a request
    timeout: 10s

    backoff_config:
      # Initial backoff time between retries
      minbackoff: 100ms
      # Maximum backoff time between retries
      maxbackoff: 5s
      # Maximum number of retries when sending batches, 0 means infinite retries
      maxretries: 20

    # The labels to add to any time series or alerts when communicating with loki
    external_labels: {}

  server:
    http_listen_port: 3101
  positions:
    filename: /run/promtail/positions.yaml
  target_config:
    # Period to resync directories being watched and files being tailed
    sync_period: 10s

serviceMonitor:
  enabled: false
  interval: ""
  additionalLabels: {}
  # scrapeTimeout: 10s
